பைதான் பயன்படுத்தி சுற்றுச்சூழல் கண்காணிப்பை மேற்கொள்ளவும். சென்சார் தரவை பகுப்பாய்வு செய்து, போக்குகளைக் காட்சிப்படுத்தி, நிலையான தீர்வுகளை உருவாக்க இக்கையேடு உதவும்.
பைதான் சுற்றுச்சூழல் கண்காணிப்பு: நிலையான எதிர்காலத்திற்கான சென்சார் தரவு பகுப்பாய்வு
காலநிலை மாற்றம், மாசுபாடு மற்றும் வளங்களின் குறைபாடு ஆகியவற்றின் தாக்கங்களைப் புரிந்துகொள்வதற்கும் தணிப்பதற்கும் சுற்றுச்சூழல் கண்காணிப்பு மிகவும் முக்கியமானது. மலிவு விலையிலான சென்சார்கள் மற்றும் பைதான் மொழியின் ஆற்றல் பெருகி வருவதால், நாம் இப்போது சுற்றுச்சூழல் தரவுகளை முன்னெப்போதும் இல்லாத அளவில் சேகரித்து பகுப்பாய்வு செய்ய முடியும். சுற்றுச்சூழல் கண்காணிப்புக்கு பைதான் எவ்வாறு பயன்படுத்துவது, குறிப்பாக சென்சார் தரவு பகுப்பாய்வில் கவனம் செலுத்துவது எப்படி என்பதை இந்தக் கையேடு விரிவாக விளக்குகிறது. நிலையான தீர்வுகளை உருவாக்க உங்களுக்கு உதவும் பல்வேறு நுட்பங்கள், நூலகங்கள் மற்றும் பயன்பாடுகளை நாங்கள் ஆராய்வோம்.
சுற்றுச்சூழல் கண்காணிப்புக்கு பைதான் ஏன்?
தரவு அறிவியல் மற்றும் அறிவியல் கணக்கீட்டிற்கு பைதான் ஒரு முக்கிய மொழியாக மாறியுள்ளது. சுற்றுச்சூழல் கண்காணிப்புக்கு இது ஒரு சிறந்த தேர்வாக இருப்பதற்கு சில முக்கிய காரணங்கள் இங்கே:
- நூலகங்களின் செழுமையான சுற்றுச்சூழல் அமைப்பு: தரவு பகுப்பாய்வு, காட்சிப்படுத்தல் மற்றும் இயந்திர கற்றலுக்காக சிறப்பாக வடிவமைக்கப்பட்ட NumPy, Pandas, Matplotlib, Seaborn, Scikit-learn போன்ற நூலகங்களின் பரந்த தொகுப்பை பைதான் கொண்டுள்ளது.
- பயன்படுத்த எளிமை: பைதானின் தெளிவான மற்றும் சுருக்கமான கட்டளை அமைப்பு, விரிவான நிரலாக்க அனுபவம் இல்லாதவர்களுக்கும் கூட கற்கவும் பயன்படுத்தவும் எளிதாக்குகிறது.
- திறந்த மூல மற்றும் இலவசம்: பைதான் ஒரு திறந்த மூல மொழி. இதன் பொருள், இது இலவசமாகப் பயன்படுத்தவும் விநியோகிக்கவும் கிடைக்கிறது, இது சுற்றுச்சூழல் கண்காணிப்பு சமூகத்தில் ஒத்துழைப்பு மற்றும் புதுமைகளை ஊக்குவிக்கிறது.
- IoT சாதனங்களுடன் ஒருங்கிணைப்பு: பைதான் பல்வேறு இன்டர்நெட் ஆஃப் திங்ஸ் (IoT) சாதனங்கள் மற்றும் சென்சார்களுடன் தடையின்றி ஒருங்கிணைந்து, நிகழ்நேர தரவு பெறுதல் மற்றும் செயலாக்கத்தை அனுமதிக்கிறது.
- பல்வேறு தளங்களுக்கு இணக்கமானது: பைதான் பல்வேறு இயக்க முறைமைகளில் (Windows, macOS, Linux) இயங்குகிறது, இது வெவ்வேறு வன்பொருள் மற்றும் மென்பொருள் சூழல்களுக்கு ஏற்றதாக அமைகிறது.
தரவுப் பெறுதல்: சென்சார்களுடன் இணைத்தல்
சுற்றுச்சூழல் கண்காணிப்பில் முதல் படி சென்சார்களிடமிருந்து தரவுகளைப் பெறுவதாகும். சென்சார்கள் பரந்த அளவிலான சுற்றுச்சூழல் அளவீடுகளை அளவிட முடியும், அவற்றுள்:
- காற்றுத் தரம்: துகள்கள் (PM2.5, PM10), ஓசோன் (O3), நைட்ரஜன் டை ஆக்சைடு (NO2), சல்பர் டை ஆக்சைடு (SO2), கார்பன் மோனாக்சைடு (CO)
- நீர் தரம்: pH, கரைந்த ஆக்ஸிஜன் (DO), கலங்கல், கடத்துத்திறன், வெப்பநிலை, மாசுபடுத்திகள்
- காலநிலை: வெப்பநிலை, ஈரப்பதம், அழுத்தம், மழைப்பொழிவு, காற்றின் வேகம், சூரியக் கதிர்வீச்சு
- மண்: ஈரப்பதம், வெப்பநிலை, pH, ஊட்டச்சத்து அளவுகள்
- ஒலி மாசுபாடு: டெசிபல் அளவுகள்
சென்சார்களை மைக்ரோகண்ட்ரோலர்களுடன் (எ.கா., ஆர்டுயினோ, ராஸ்பெர்ரி பை) அல்லது பிரத்யேக தரவுப் பதிவேடுகளுடன் இணைக்க முடியும். இந்த சாதனங்கள் தரவுகளைச் சேகரித்து, சேமிப்பு மற்றும் பகுப்பாய்வுக்காக ஒரு மைய சேவையகத்திற்கோ அல்லது கிளவுட் தளத்திற்கோ அனுப்புகின்றன.
எடுத்துக்காட்டு: பைதான் பயன்படுத்தி ஒரு சென்சாரில் இருந்து காற்று தரவு தரவுகளைப் படித்தல்
ஒரு ராஸ்பெர்ரி பையுடன் இணைக்கப்பட்ட ஒரு சென்சாரில் இருந்து காற்று தரவு தரவுகளைப் படிக்க விரும்பும் ஒரு காட்சியைப் பார்ப்போம். I2C (Inter-Integrated Circuit) தொடர்பு வழியாக சென்சாருடன் தொடர்பு கொள்ள `smbus` நூலகத்தைப் பயன்படுத்தலாம்.
```python import smbus import time # I2C address of the sensor SENSOR_ADDRESS = 0x48 # Register addresses for PM2.5 and PM10 PM25_REGISTER = 0x02 PM10_REGISTER = 0x04 # Initialize I2C bus bus = smbus.SMBus(1) # Use bus 1 for Raspberry Pi def read_pm_data(): # Read PM2.5 value bus.write_byte(SENSOR_ADDRESS, PM25_REGISTER) time.sleep(0.1) pm25_data = bus.read_i2c_block_data(SENSOR_ADDRESS, PM25_REGISTER, 2) pm25 = pm25_data[0] * 256 + pm25_data[1] # Read PM10 value bus.write_byte(SENSOR_ADDRESS, PM10_REGISTER) time.sleep(0.1) pm10_data = bus.read_i2c_block_data(SENSOR_ADDRESS, PM10_REGISTER, 2) pm10 = pm10_data[0] * 256 + pm10_data[1] return pm25, pm10 if __name__ == "__main__": try: while True: pm25, pm10 = read_pm_data() print(f"PM2.5: {pm25} μg/m³") print(f"PM10: {pm10} μg/m³") time.sleep(5) except KeyboardInterrupt: print("\nExiting...") ```விளக்கம்:
- இந்தக் குறியீடு `smbus` மற்றும் `time` நூலகங்களை இறக்குமதி செய்கிறது.
- இது சென்சாரின் I2C முகவரியையும், PM2.5 மற்றும் PM10க்கான பதிவு முகவரிகளையும் வரையறுக்கிறது.
- `read_pm_data()` செயல்பாடு I2C தொடர்பு பயன்படுத்தி சென்சாரிலிருந்து PM2.5 மற்றும் PM10 மதிப்புகளைப் படிக்கிறது.
- `main` தொகுதி தொடர்ந்து ஒவ்வொரு 5 வினாடிக்கும் PM2.5 மற்றும் PM10 மதிப்புகளைப் படித்து அச்சிடுகிறது.
இது ஒரு அடிப்படை எடுத்துக்காட்டு, குறிப்பிட்ட குறியீடு பயன்படுத்தப்படும் சென்சார் மற்றும் தொடர்பு நெறிமுறையைப் பொறுத்து மாறுபடும்.
தரவு சேமிப்பு: சரியான தரவுத்தளத்தைத் தேர்ந்தெடுத்தல்
தரவைப் பெற்றவுடன், மேலும் பகுப்பாய்வுக்காக அதை ஒரு தரவுத்தளத்தில் சேமிக்க வேண்டும். சுற்றுச்சூழல் கண்காணிப்பு தரவுகளுக்கு ஏற்ற பல தரவுத்தள விருப்பங்கள் உள்ளன, அவற்றுள்:
- நேர-தொடர் தரவுத்தளங்கள் (TSDBs): InfluxDB, TimescaleDB, Prometheus. இந்தத் தரவுத்தளங்கள் குறிப்பாக நேர-தொடர் தரவுகளைச் சேமிப்பதற்கும், வினவுவதற்கும் வடிவமைக்கப்பட்டுள்ளன, இது சுற்றுச்சூழல் கண்காணிப்பில் பொதுவானது. அவை திறமையான சேமிப்பு, குறியீட்டு மற்றும் நேர முத்திரையிடப்பட்ட தரவுகளை வினவுதல் போன்ற அம்சங்களை வழங்குகின்றன.
- உறவாடு தரவுத்தளங்கள் (RDBMS): PostgreSQL, MySQL. இந்தத் தரவுத்தளங்கள் பன்முகத்தன்மை கொண்டவை மற்றும் நேர-தொடர் தரவு உட்பட பல்வேறு தரவு வகைகளைக் கையாள முடியும். அவை வலுவான தரவு ஒருமைப்பாடு மற்றும் ACID (அணுத்தன்மை, நிலைத்தன்மை, தனிமைப்படுத்தல், நீடித்தல்) பண்புகளை வழங்குகின்றன.
- NoSQL தரவுத்தளங்கள்: MongoDB, Cassandra. இந்தத் தரவுத்தளங்கள் கட்டமைக்கப்படாத அல்லது அரை-கட்டமைக்கப்பட்ட தரவுகளைச் சேமிப்பதற்கு ஏற்றவை, சென்சார் அளவீடுகள் மாறுபட்ட பண்புகளுடன் போன்றவை. அவை அளவிடக்கூடிய தன்மை மற்றும் நெகிழ்வுத்தன்மையை வழங்குகின்றன.
- கிளவுட் அடிப்படையிலான சேமிப்பு: AWS S3, Google Cloud Storage, Azure Blob Storage. இந்தச் சேவைகள் பெரிய தரவுத்தொகுப்புகளுக்கு அளவிடக்கூடிய மற்றும் செலவு குறைந்த சேமிப்பை வழங்குகின்றன.
தரவுத்தளத்தின் தேர்வு உங்கள் திட்டத்தின் குறிப்பிட்ட தேவைகளைப் பொறுத்தது, இதில் தரவு அளவு, வினவல் சிக்கல்தன்மை மற்றும் அளவிடக்கூடிய தேவைகள் அடங்கும். நேர-தொடர் தரவுகளுக்கு, TSDBகள் பொதுவாக விரும்பப்படும் விருப்பமாகும்.
தரவு பகுப்பாய்வு: நுண்ணறிவுகளை வெளிக்கொணர்தல்
சுற்றுச்சூழல் கண்காணிப்பின் மையப்பகுதி தரவு பகுப்பாய்வு ஆகும். அர்த்தமுள்ள நுண்ணறிவுகளைப் பிரித்தெடுக்க சென்சார் தரவுகளைச் சுத்தம் செய்தல், செயலாக்குதல் மற்றும் பகுப்பாய்வு செய்தல் இதில் அடங்கும். தரவு பகுப்பாய்வுக்காக பைதான் ஒரு செழுமையான நூலகத் தொகுப்பை வழங்குகிறது, அவற்றுள்:
- NumPy: எண் கணக்கீடுகள் மற்றும் அணி கையாளுதலுக்கு.
- Pandas: தரவு கையாளுதல் மற்றும் பகுப்பாய்வு, இதில் தரவு சுத்தம் செய்தல், வடிகட்டுதல், குழுவாக்குதல் மற்றும் ஒருங்கிணைத்தல் ஆகியவை அடங்கும்.
- SciPy: அறிவியல் கணக்கீட்டிற்கு, இதில் புள்ளிவிவர பகுப்பாய்வு, சிக்னல் செயலாக்கம் மற்றும் மேம்படுத்துதல் ஆகியவை அடங்கும்.
தரவு சுத்தம் செய்தல் மற்றும் முன் செயலாக்கம்
மூல சென்சார் தரவுகளில் பெரும்பாலும் சத்தம், விடுபட்ட மதிப்புகள் மற்றும் அசாதாரண மதிப்புகள் இருக்கும். பகுப்பாய்வின் துல்லியம் மற்றும் நம்பகத்தன்மையை உறுதிப்படுத்த தரவு சுத்தம் செய்தல் மற்றும் முன் செயலாக்கம் அத்தியாவசிய படிகள் ஆகும். பொதுவான நுட்பங்கள் பின்வருமாறு:
- விடுபட்ட மதிப்புகளைக் கையாளுதல்: சராசரி நிரப்பல், மீடியன் நிரப்பல் அல்லது இடைச்செருகல் போன்ற நுட்பங்களைப் பயன்படுத்தி விடுபட்ட மதிப்புகளை நிரப்புதல்.
- அசாதாரண மதிப்புகளைக் கண்டறிதல் மற்றும் நீக்குதல்: Z-score அல்லது IQR (இடைப்பட்ட வரம்பு) முறை போன்ற புள்ளிவிவர முறைகளைப் பயன்படுத்தி அசாதாரண மதிப்புகளைக் கண்டறிந்து நீக்குதல்.
- தரவு மென்மையாக்குதல்: சத்தத்தைக் குறைக்க நகரும் சராசரிகள் அல்லது Savitzky-Golay வடிகட்டிகள் போன்ற மென்மையாக்கும் நுட்பங்களைப் பயன்படுத்துதல்.
- தரவு இயல்பாக்கம்: இயந்திர கற்றல் அல்காரிதம்களின் செயல்திறனை மேம்படுத்த தரவை ஒரு பொதுவான வரம்பிற்கு (எ.கா., 0 முதல் 1 வரை) அளவிடுதல்.
எடுத்துக்காட்டு: பாண்டாஸ் உடன் தரவு சுத்தம் செய்தல்
பாண்டாஸ் நூலகத்தைப் பயன்படுத்தி தரவு சுத்தம் செய்வதைப் பார்ப்போம்.
```python import pandas as pd import numpy as np # Sample sensor data with missing values and outliers data = { 'timestamp': pd.to_datetime(['2023-10-26 00:00:00', '2023-10-26 00:05:00', '2023-10-26 00:10:00', '2023-10-26 00:15:00', '2023-10-26 00:20:00']), 'temperature': [25.5, 26.0, np.nan, 27.5, 100.0], # NaN and outlier 'humidity': [60.0, 62.0, 61.0, 63.0, 65.0] } df = pd.DataFrame(data) # 1. Handle Missing Values (Mean Imputation) df['temperature'].fillna(df['temperature'].mean(), inplace=True) # 2. Outlier Detection and Removal (Z-score) from scipy import stats z = np.abs(stats.zscore(df['temperature'])) threshold = 3 # Z-score threshold df = df[z < threshold] # Print the cleaned DataFrame print(df) ```விளக்கம்:
- இந்தக் குறியீடு விடுபட்ட மதிப்புகள் (NaN) மற்றும் ஒரு அசாதாரண மதிப்பு (100.0) உட்பட மாதிரி சென்சார் தரவுகளுடன் ஒரு பாண்டாஸ் டேட்டாஃப்ரேமை உருவாக்குகிறது.
- இது 'temperature' நெடுவரிசையில் விடுபட்ட மதிப்புகளை அந்த நெடுவரிசையின் சராசரி மதிப்பைக் கொண்டு நிரப்புகிறது.
- இது 'temperature' நெடுவரிசையில் உள்ள ஒவ்வொரு மதிப்பிற்கும் Z-score ஐக் கணக்கிட்டு, Z-score 3 ஐ விட அதிகமாக உள்ள அசாதாரண மதிப்புகளை நீக்குகிறது.
- இறுதியாக, இது சுத்தம் செய்யப்பட்ட டேட்டாஃப்ரேமை அச்சிடுகிறது.
நேரத் தொடர் பகுப்பாய்வு
சுற்றுச்சூழல் தரவு பெரும்பாலும் காலப்போக்கில் சேகரிக்கப்படுகிறது, இது நேரத் தொடர் பகுப்பாய்வை ஒரு முக்கியமான நுட்பமாக ஆக்குகிறது. நேரத் தொடர் பகுப்பாய்வு என்பது நேரம் வரிசைப்படுத்தப்பட்ட தரவுப் புள்ளிகளை பகுப்பாய்வு செய்வதை உள்ளடக்கியது. பொதுவான நுட்பங்கள் பின்வருமாறு:
- போக்கு பகுப்பாய்வு: காலப்போக்கில் தரவின் ஒட்டுமொத்த திசையை அடையாளம் காணுதல்.
- பருவகால பகுப்பாய்வு: வழக்கமான இடைவெளிகளில் நிகழும் மீண்டும் நிகழும் வடிவங்களை அடையாளம் காணுதல்.
- சுயத்தொடர்பு பகுப்பாய்வு: ஒரு நேரத் தொடருக்கும் அதன் பின்னடைந்த மதிப்புகளுக்கும் இடையிலான தொடர்பை அளவிடுதல்.
- முன்கணிப்பு: கடந்தகால தரவுகளின் அடிப்படையில் எதிர்கால மதிப்புகளைக் கணித்தல்.
பைதான் நூலகங்களான `statsmodels` மற்றும் `Prophet` நேரத் தொடர் பகுப்பாய்வைச் செய்வதற்கான கருவிகளை வழங்குகின்றன. `statsmodels` ARIMA (Autoregressive Integrated Moving Average) மாதிரிகள் உட்பட பரந்த அளவிலான புள்ளிவிவர மாதிரிகளை வழங்குகிறது, அதே நேரத்தில் `Prophet` வலுவான பருவகாலத்துடன் கூடிய நேரத் தொடர் தரவுகளைக் கணிப்பதற்காக சிறப்பாக வடிவமைக்கப்பட்டுள்ளது.
எடுத்துக்காட்டு: statsmodels உடன் நேரத் தொடர் சிதைவு
```python import pandas as pd import matplotlib.pyplot as plt from statsmodels.tsa.seasonal import seasonal_decompose # Sample time series data (replace with your actual data) data = { 'timestamp': pd.to_datetime(pd.date_range(start='2023-01-01', end='2023-12-31', freq='D')), 'temperature': [20 + 10*np.sin(i/30) + np.random.normal(0, 2) for i in range(365)] } df = pd.DataFrame(data) df.set_index('timestamp', inplace=True) # Decompose the time series result = seasonal_decompose(df['temperature'], model='additive', period=30) # Plot the components plt.figure(figsize=(12, 8)) plt.subplot(411) plt.plot(df['temperature'], label='Original') plt.legend(loc='upper left') plt.subplot(412) plt.plot(result.trend, label='Trend') plt.legend(loc='upper left') plt.subplot(413) plt.plot(result.seasonal, label='Seasonal') plt.legend(loc='upper left') plt.subplot(414) plt.plot(result.resid, label='Residual') plt.legend(loc='upper left') plt.tight_layout() plt.show() ```விளக்கம்:
- இந்தக் குறியீடு தினசரி வெப்பநிலை அளவீடுகளைக் குறிக்கும் மாதிரி நேரத் தொடர் தரவுகளுடன் ஒரு பாண்டாஸ் டேட்டாஃப்ரேமை உருவாக்குகிறது.
- இது `statsmodels` நூலகத்திலிருந்து `seasonal_decompose` செயல்பாட்டைப் பயன்படுத்தி நேரத் தொடரை அதன் போக்கு, பருவகால மற்றும் எஞ்சிய கூறுகளாகச் சிதைக்கிறது.
- இது அசல் நேரத் தொடர் மற்றும் அதன் கூறுகளை, அடிப்படை வடிவங்களைக் காட்சிப்படுத்தவும் வரைகிறது.
தரவு காட்சிப்படுத்தல்: கண்டுபிடிப்புகளைத் தெரிவித்தல்
தரவு காட்சிப்படுத்தல் உங்கள் கண்டுபிடிப்புகளை ஒரு பரந்த பார்வையாளர்களுக்குத் தெரிவிப்பதற்கு மிகவும் முக்கியமானது. தகவலறிந்த மற்றும் பார்வைக்கு ஈர்க்கும் விளக்கப்படங்கள் மற்றும் வரைபடங்களை உருவாக்க பைதான் பல நூலகங்களை வழங்குகிறது, அவற்றுள்:
- Matplotlib: நிலையான, ஊடாடும் மற்றும் அனிமேஷன் செய்யப்பட்ட காட்சிகளை உருவாக்குவதற்கான ஒரு அடிப்படை நூலகம்.
- Seaborn: Matplotlib இன் மீது கட்டப்பட்ட ஒரு உயர்-நிலை நூலகம், இது புள்ளிவிவர காட்சிகளை உருவாக்குவதற்கு மிகவும் அழகியலும் பயனர் நட்பு இடைமுகத்தையும் வழங்குகிறது.
- Plotly: ஊடாடும் மற்றும் வலை அடிப்படையிலான காட்சிகளை உருவாக்குவதற்கான ஒரு நூலகம்.
- Bokeh: ஊடாடும் வலை பயன்பாடுகள் மற்றும் டாஷ்போர்டுகளை உருவாக்குவதற்கான மற்றொரு நூலகம்.
எடுத்துக்காட்டு: Matplotlib உடன் ஒரு கோட்டு விளக்கப்படத்தை உருவாக்குதல்
```python import matplotlib.pyplot as plt import pandas as pd import numpy as np #Sample Data dates = pd.to_datetime(pd.date_range(start='2023-01-01', end='2023-01-10')) temperatures = [10, 12, 15, 14, 16, 18, 17, 19, 20, 22] data = {'date': dates, 'temperature': temperatures} df = pd.DataFrame(data) # Creating the plot plt.figure(figsize=(10, 6)) plt.plot(df['date'], df['temperature'], marker='o', linestyle='-') # Adding title and labels plt.title('Daily Temperature Trend') plt.xlabel('Date') plt.ylabel('Temperature (°C)') # Adding grid for better readability plt.grid(True) # Rotating date labels for better readability plt.xticks(rotation=45) # Show the plot plt.tight_layout() plt.show() ```விளக்கம்:
- வரைபடத்திற்காக `matplotlib.pyplot` ஐ இறக்குமதி செய்கிறோம்.
- தேதிகள் மற்றும் வெப்பநிலைகளுடன் மாதிரித் தரவை உருவாக்குகிறோம்.
- x-அச்சில் தேதிகளையும், y-அச்சில் வெப்பநிலையையும் கொண்ட ஒரு கோட்டு விளக்கப்படத்தை உருவாக்குகிறோம்.
- தெளிவுக்காக தலைப்பு, லேபிள்கள் மற்றும் ஒரு கட்டத்தை சேர்க்கிறோம்.
- x-அச்சு லேபிள்கள் (தேதிகள்) சிறப்பாகப் படிக்க வசதியாக சுழற்றப்படுகின்றன.
சுற்றுச்சூழல் கண்காணிப்புக்கு இயந்திர கற்றல்
சுற்றுச்சூழல் கண்காணிப்பில் முன்கணிப்பு மாதிரிகளை உருவாக்கவும் பணிகளை தானியங்குபடுத்தவும் இயந்திர கற்றலைப் பயன்படுத்தலாம். இயந்திர கற்றலின் சில பயன்பாடுகள் பின்வருமாறு:
- காற்றுத் தரக் கணிப்பு: கடந்தகால தரவுகள் மற்றும் வானிலை நிலைமைகளின் அடிப்படையில் எதிர்கால காற்றுத் தர நிலைகளைக் கணித்தல்.
- நீர் தரக் கண்காணிப்பு: அசாதாரணங்களைக் கண்டறிதல் மற்றும் நீர் தர அளவீடுகளைக் கணித்தல்.
- காலநிலை மாற்ற மாதிரியாக்கம்: காலநிலை சூழ்நிலைகளை உருவகப்படுத்துதல் மற்றும் காலநிலை மாற்றத்தின் தாக்கங்களை மதிப்பிடுதல்.
- மாசுபாட்டின் மூலத்தைக் கண்டறிதல்: சென்சார் தரவுகள் மற்றும் புவியியல் தகவல்களின் அடிப்படையில் மாசுபாட்டின் மூலங்களைக் கண்டறிதல்.
பைதானின் `Scikit-learn` நூலகம் வகைப்பாடு, பின்னடைவு, குழுவாக்கம் மற்றும் பரிமாணக் குறைப்பு ஆகியவற்றிற்கான இயந்திர கற்றல் அல்காரிதம்களின் விரிவான தொகுப்பை வழங்குகிறது.
எடுத்துக்காட்டு: Scikit-learn உடன் காற்றுத் தரக் கணிப்பு
ஒரு எளிய நேரியல் பின்னடைவு மாதிரியைப் பயன்படுத்தி காற்றுத் தரக் கணிப்பைப் பார்ப்போம்.
```python import pandas as pd from sklearn.model_selection import train_test_split from sklearn.linear_model import LinearRegression from sklearn.metrics import mean_squared_error # Sample air quality data (replace with your actual data) data = { 'temperature': [20, 22, 25, 24, 26, 28, 27, 29, 30, 32], 'humidity': [60, 62, 65, 64, 66, 68, 67, 69, 70, 72], 'pm25': [10, 12, 15, 14, 16, 18, 17, 19, 20, 22] # PM2.5 concentration } df = pd.DataFrame(data) # Prepare the data X = df[['temperature', 'humidity']] y = df['pm25'] # Split the data into training and testing sets X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42) # Train the linear regression model model = LinearRegression() model.fit(X_train, y_train) # Make predictions on the test set y_pred = model.predict(X_test) # Evaluate the model mse = mean_squared_error(y_test, y_pred) print(f"Mean Squared Error: {mse}") # Predict PM2.5 for a new set of conditions new_data = pd.DataFrame({'temperature': [25], 'humidity': [63]}) predicted_pm25 = model.predict(new_data)[0] print(f"Predicted PM2.5: {predicted_pm25}") ```விளக்கம்:
- இந்தக் குறியீடு மாதிரி காற்றுத் தரவு தரவுகளுடன் ஒரு பாண்டாஸ் டேட்டாஃப்ரேமை உருவாக்குகிறது, இதில் வெப்பநிலை, ஈரப்பதம் மற்றும் PM2.5 செறிவு ஆகியவை அடங்கும்.
- இது தரவை பயிற்சி மற்றும் சோதனை தொகுப்புகளாகப் பிரிக்கிறது.
- இது பயிற்சித் தரவைப் பயன்படுத்தி ஒரு நேரியல் பின்னடைவு மாதிரியைப் பயிற்றுவிக்கிறது.
- இது சோதனைத் தொகுப்பில் கணிப்புகளைச் செய்து, சராசரி வர்க்க பிழையைப் பயன்படுத்தி மாதிரியை மதிப்பீடு செய்கிறது.
- இது புதிய நிலைமைகளின் தொகுப்பிற்கான PM2.5 செறிவைக் கணிக்கிறது.
நிகழ்நேர சுற்றுச்சூழல் கண்காணிப்பு அமைப்பை உருவாக்குதல்
நிகழ்நேர சுற்றுச்சூழல் கண்காணிப்பு அமைப்பை உருவாக்க, மேலே விவாதிக்கப்பட்ட நுட்பங்களை பின்வரும் கூறுகளுடன் இணைக்கலாம்:
- சென்சார்கள்: நீங்கள் கண்காணிக்க விரும்பும் சுற்றுச்சூழல் அளவீடுகளுக்கு ஏற்ற சென்சார்களைத் தேர்வு செய்யவும்.
- மைக்ரோகண்ட்ரோலர்கள்/தரவுப் பதிவேடுகள்: சென்சார்களிடமிருந்து தரவுகளைச் சேகரிக்க மைக்ரோகண்ட்ரோலர்கள் அல்லது தரவுப் பதிவேடுகளைப் பயன்படுத்தவும்.
- தொடர்பு நெறிமுறை: ஒரு மைய சேவையகத்திற்கு தரவுகளை அனுப்ப வைஃபை, செல்லுலார் அல்லது LoRaWAN போன்ற ஒரு தொடர்பு நெறிமுறையைப் பயன்படுத்தவும்.
- தரவு சேமிப்பு: தரவைச் சேமிக்க ஒரு தரவுத்தளத்தைத் தேர்வு செய்யவும்.
- தரவு செயலாக்கம்: தரவைச் சுத்தம் செய்ய, செயலாக்க மற்றும் பகுப்பாய்வு செய்ய பைதான் பயன்படுத்தவும்.
- தரவு காட்சிப்படுத்தல்: தரவைக் காட்சிப்படுத்த டாஷ்போர்டுகள் அல்லது வலைப் பயன்பாடுகளை உருவாக்கவும்.
- எச்சரிக்கை அமைப்பு: குறிப்பிட்ட வரம்புகள் மீறப்படும்போது உங்களுக்குத் தெரிவிக்க ஒரு எச்சரிக்கை அமைப்பைச் செயல்படுத்தவும்.
நெறிமுறைச் சிந்தனைகள்
சுற்றுச்சூழல் கண்காணிப்பு அமைப்புகளை வரிசைப்படுத்தும்போது நெறிமுறைச் சிந்தனைகளைக் கருத்தில் கொள்வது மிக முக்கியம். இதில் அடங்குவன:
- தரவு தனியுரிமை: அமைப்பு இருப்பிடம் அல்லது தனிப்பட்ட தரவுகளைச் சேகரித்தால், தனிநபர்களின் தனியுரிமையை உறுதி செய்யவும்.
- தரவுப் பாதுகாப்பு: அங்கீகரிக்கப்படாத அணுகல் மற்றும் தரவு மீறல்களிலிருந்து அமைப்பைப் பாதுகாக்கவும்.
- தரவுத் துல்லியம்: துல்லியமான மற்றும் நம்பகமான தரவு சேகரிப்பு மற்றும் பகுப்பாய்வுக்காகப் பாடுபடுங்கள்.
- வெளிப்படைத்தன்மை: அமைப்பின் நோக்கம் மற்றும் செயல்பாடு பற்றி வெளிப்படையாக இருங்கள்.
- சமூக ஈடுபாடு: அமைப்பின் வடிவமைப்பு மற்றும் வரிசைப்படுத்தலில் சமூகத்தை ஈடுபடுத்துங்கள்.
சுற்றுச்சூழல் கண்காணிப்பில் பைதானின் உலகளாவிய எடுத்துக்காட்டுகள்
- ஸ்மார்ட் சிட்டிசன் திட்டம் (பார்சிலோனா, ஸ்பெயின்): குடிமக்கள் சுற்றுச்சூழல் தரவுகளைச் சேகரித்து பகிர திறந்த மூலக் கருவிகளை வழங்கும் உலகளாவிய தளம், தரவு செயலாக்கம் மற்றும் காட்சிப்படுத்தலுக்கு பைதான் பயன்படுத்தப்படுகிறது.
- சுற்றுச்சூழல் பாதுகாப்பு நிறுவனம் (EPA, USA): காற்று மற்றும் நீர் தரம் தொடர்பான சுற்றுச்சூழல் தரவுகளின் பகுப்பாய்வு, மாதிரியாக்கம் மற்றும் காட்சிப்படுத்தலுக்கு பைதான் ஐ விரிவாகப் பயன்படுத்துகிறது.
- OpenAQ திட்டம் (உலகளாவிய): உலகெங்கிலும் இருந்து காற்றுத் தரவு தரவுகளை ஒருங்கிணைக்கும் ஒரு திறந்த மூல தளம், தரவு உட்செலுத்துதல், செயலாக்கம் மற்றும் API மேம்பாட்டிற்கு பைதான் பயன்படுத்தப்படுகிறது.
- உலகம் முழுவதும் உள்ள பல்வேறு ஆராய்ச்சி நிறுவனங்கள்: காலநிலை மாதிரியாக்கம், சுற்றுச்சூழல் ஆய்வுகள் மற்றும் பல்லுயிரினங்களைக் கண்காணிப்பதற்கு பைதான் ஐப் பயன்படுத்துகின்றன.
- ஸ்மார்ட் விவசாய முயற்சிகள்: உலகெங்கிலும், விவசாயிகள் தங்கள் வயல்களில் இருந்து சென்சார் தரவுகளை பகுப்பாய்வு செய்ய பைதான் ஐப் பயன்படுத்துகிறார்கள், நீர்ப்பாசனம், உரம் பயன்பாடு மற்றும் பூச்சி கட்டுப்பாட்டை மேம்படுத்துகிறார்கள்.
முடிவுரை
சுற்றுச்சூழல் கண்காணிப்பு மற்றும் சென்சார் தரவு பகுப்பாய்வுக்கு பைதான் ஒரு சக்திவாய்ந்த மற்றும் பல்துறை தளத்தை வழங்குகிறது. பைதானின் செழுமையான நூலகங்களின் சுற்றுச்சூழல் அமைப்பு மற்றும் அதன் எளிதான பயன்பாட்டைப் பயன்படுத்துவதன் மூலம், அழுத்தமான சுற்றுச்சூழல் சவால்களை எதிர்கொள்ள நிலையான தீர்வுகளை நீங்கள் உருவாக்கலாம். இந்தக் கையேடு முக்கிய நுட்பங்கள் மற்றும் பயன்பாடுகளின் விரிவான கண்ணோட்டத்தை வழங்கியுள்ளது. பைதானின் சக்தியைப் பயன்படுத்தி மேலும் ஆராய்ந்து, நிலையான எதிர்காலத்திற்கு பங்களிக்க உங்களை நாங்கள் ஊக்குவிக்கிறோம். எளிதில் கிடைக்கக்கூடிய தொழில்நுட்பம் மற்றும் பைதான் போன்ற திறந்த மூல தளங்களின் கலவையானது உலகம் முழுவதும் உள்ள தனிநபர்கள் மற்றும் நிறுவனங்களுக்கு சுற்றுச்சூழல் அபாயங்களை கண்காணிக்கவும் தணிக்கவும் அதிகாரம் அளிக்கிறது, இது மேலும் தகவலறிந்த முடிவெடுப்பதற்கும் ஆரோக்கியமான கிரகத்திற்கும் வழிவகுக்கும்.
மேலதிக வளங்கள்
- பாண்டாஸ் ஆவணங்கள்: https://pandas.pydata.org/docs/
- Matplotlib ஆவணங்கள்: https://matplotlib.org/stable/contents.html
- Scikit-learn ஆவணங்கள்: https://scikit-learn.org/stable/
- statsmodels ஆவணங்கள்: https://www.statsmodels.org/stable/index.html
- RealPython.com சுற்றுச்சூழல் கண்காணிப்பு பயிற்சிகள்: https://realpython.com/ ("சுற்றுச்சூழல் கண்காணிப்பு" எனத் தேடவும்)